<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="zh" xml:lang="zh" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<head>
<META http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Task: 定义业务系统环境</title>
<meta name="uma.type" content="Task">
<meta name="uma.name" content="bm_define_system_context">
<meta name="uma.presentationName" content="定义业务系统环境">
<meta name="uma.category" content="Discipline:rup_business_modeling_discipline:业务建模">
<meta name="element_type" content="activity">
<meta name="filetype" content="description">
<meta name="role" content="">
<link rel="StyleSheet" href="./../../css/default.css" type="text/css">
<script src="./../../scripts/ContentPageResource.js" type="text/javascript" language="JavaScript"></script><script src="./../../scripts/ContentPageSection.js" type="text/javascript" language="JavaScript"></script><script src="./../../scripts/ContentPageSubSection.js" type="text/javascript" language="JavaScript"></script><script src="./../../scripts/ContentPageToolbar.js" type="text/javascript" language="JavaScript"></script><script src="./../../scripts/contentPage.js" type="text/javascript" language="JavaScript"></script><script type="text/javascript" language="JavaScript">
					var backPath = './../../';
					var imgPath = './../../images/';
					var nodeInfo=null;
					contentPage.preload(imgPath, backPath, nodeInfo, '', true, false, false);
				</script>
</head>
<body>
<div id="breadcrumbs"></div>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td valign="top">
<div id="page-guid" value="_tPtHgBpVEdqUwb9RAn2tTA"></div>
<table border="0" cellspacing="0" cellpadding="0" width="100%">
<tr>
<td class="pageTitle" nowrap="true">Task: 定义业务系统环境</td><td width="100%">
<div align="right" id="contentPageToolbar"></div>
</td><td width="100%" class="expandCollapseLink" align="right"><a name="mainIndex" href="./../../index.htm"></a><script language="JavaScript" type="text/javascript" src="./../../scripts/treebrowser.js"></script></td>
</tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td class="pageTitleSeparator"><img src="./../../images/shim.gif" alt="" title="" height="1"></td>
</tr>
</table>
<div class="overview">
<table width="97%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="50"><img src="./../../images/task.gif" alt="" title=""></td><td>
<table class="overviewTable" border="0" cellspacing="0" cellpadding="0">
<tr>
<td valign="top">此任务描述了如何创建显示业务系统及其业务参与者之间的顶级协作的系统环境图。</td>
</tr>
<tr>
<td>Disciplines: <a href="./../../rup_bm/disciplines/rup_business_modeling_discipline_553E20F6.html" guid="_C7UYYBDfEdq7YLm-hn4i0Q">业务建模</a></td>
</tr>
</table>
</td>
</tr>
</table>
</div>
<div class="sectionHeading">Purpose</div>
<div class="sectionContent">
<table class="sectionTable" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<td class="sectionTableSingleCell">在业务用例模型的基础上，创建显示系统（建模为顶级子系统）、系统接口以及系统与其参与者（包括在业务参与者与业务系统之间流动的外部 I/O 业务实例）之间关系的顶级协作。</td>
</tr>
</table>
</div>
<div class="sectionHeading">Relationships</div>
<div class="sectionContent">
<table class="sectionTable" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<th class="sectionTableHeading" scope="row">Roles</th><td class="sectionTableCell" width="42%"><span class="sectionTableCellHeading">Primary Performer:
								</span>
<ul>
<li>
<a href="./../../rup_bm/roles/rup_business_process_analyst_B9668ABF.html" guid="{76FAC4FE-AA09-48AC-85A5-68BD1EE8A86A}">业务流程分析人员</a>
</li>
</ul>
</td><td class="sectionTableCell"><span class="sectionTableCellHeading">Additional Performers:
								</span>
<ul>
<li>
<a href="./../../rup_bm/roles/rup_business_architect_bom_26A8745F.html" guid="_RqlJIBpWEdqUwb9RAn2tTA">业务架构设计师</a>
</li>
</ul>
</td>
</tr>
<tr valign="top">
<th class="sectionTableHeading" scope="row">Inputs</th><td class="sectionTableCell" width="42%"><span class="sectionTableCellHeading">Mandatory:
								</span>
<ul>
<li>
<a href="./../../rup_bm/workproducts/rup_supplementary_business_specification_BBC64E05.html" guid="{0DADA95B-7C1D-44BD-9DB5-41AC99767753}">补充业务规约</a>
</li>
<li>
<a href="./../../rup_bm/workproducts/rup_business_analysis_model_9449F63A.html" guid="{CF53445C-3351-46C6-810E-8251830029A7}">业务分析模型</a>
</li>
<li>
<a href="./../../rup_bm/workproducts/rup_business_use_case_model_EC79264C.html" guid="{89BEF367-5875-47E0-97D6-23E5BCCE52B8}">业务用例模型</a>
</li>
</ul>
<ul></ul>
</td><td class="sectionTableCell"><span class="sectionTableCellHeading">Optional:
								</span>
<ul>
<li>None</li>
</ul>
</td>
</tr>
<tr valign="top">
<th class="sectionTableHeading" scope="row">Outputs</th><td class="sectionTableCell" colspan="2">
<ul>
<li>
<a href="./../../rup_bm/workproducts/rup_bm_operation_14E87A5B.html" guid="_Wg_T4BpVEdqUwb9RAn2tTA">业务操作</a>
</li>
<li>
<a href="./../../rup_bm/workproducts/rup_business_analysis_model_9449F63A.html" guid="{CF53445C-3351-46C6-810E-8251830029A7}">业务分析模型</a>
</li>
<li>
<a href="./../../rup_bm/workproducts/rup_business_use_case_model_EC79264C.html" guid="{89BEF367-5875-47E0-97D6-23E5BCCE52B8}">业务用例模型</a>
</li>
</ul>
<ul></ul>
</td>
</tr>
</table>
</div>
<div class="sectionHeading">Steps</div>
<div class="sectionContent">
<table class="sectionTable" border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="sectionTableSingleCell">
<div class="stepHeading">简介</div>
<div class="stepContent">
<table class="stepTable" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<td><p>
    用例模型显示系统的行为环境，而在此任务中，使用<a class="elementLinkWithType" href="./../../rup_bm/workproducts/rup_business_use_case_model_EC79264C.html" guid="{89BEF367-5875-47E0-97D6-23E5BCCE52B8}">Artifact: 业务用例模型</a>和<a class="elementLinkWithType" href="./../../rup_bm/workproducts/rup_supplementary_business_specification_BBC64E05.html" guid="{0DADA95B-7C1D-44BD-9DB5-41AC99767753}">Artifact: 补充业务规约</a>在系统环境中创建系统的逻辑模型。 该模型用于描绘<i>环境图</i>。
</p>
<ul>
    <li>
        将由系统<i>实现</i>的接口（包括系统提供的<i>操作</i>、支持的相关协议、系统实现的<i>状态变量</i>和<i>存储</i>，以及属性）。
    </li>
    <li>
        在系统及其参与者之间流动的 <i>I/O 实体</i>。
    </li>
    <li>
        系统为获得适当的性能<i>所需</i>的接口（将由与该系统交互的参与者实现）。通常，如果参与者代表系统必须与其通信的现有系统，则这些所需的接口只反映由其他系统施加的约束。
    </li>
</ul>
<p>
    环境图显示系统及其参与者之间的顶级协作。这是按照系统用例模型的结构模拟。该协作是在分析模型中创建的。
</p>
<p>
    I/O 实体（被表示为用于建模的构造型为“I/O”的类，这些类带有属性，但无操作）描述流入和流出系统的事物，在一般系统情况下，可包含数据、规模、精力或物理部件。I/O 实体与参与者－系统对关联（建模期间），这表示这些特定 I/O
    实体在参与者与系统之间流动。它们可以在图上显示，或是与参与者关联，而流动的方向由关联上的构造型“发送”或“接收”表示，这表示方向是相对于参与者而言的。
</p>
<p>
    系统操作是对象可请求来实现某种行为的服务。操作指定用于调用相关联行为的名称、类型、参数和约束。根据考虑的（子）系统的主要职责围绕接口对操作进行分组。系统操作调用表示，同与用例实例的交互相比，与系统的交互更为细化，而用例实例是操作调用和响应的组合。
</p>
<p>
    状态变量和存储是在由系统实现的接口上定义的属性。这些属性是抽象的，它们需要与属性的类型和多重性相应的系统维护信息，并允许对这些信息进行存储、检索和修改。这并不表示系统中的某个属性与在接口上定义的属性直接对应。状态变量和存储之间的差异不是内在的，它只是反映了将属性用于控制系统（抽象）状态机操作的方式。“状态”可持续一段时间，这和在某个时刻发生的事件（例如信号的到达）不同。在这里提到的状态机是有限状态机，对“状态”的描绘通常由相对较少的变量决定；例如，当前状态可由枚举类型的单个属性的值确定。但是，系统对事件的反应可能不但依赖于事件的性质（例如，事件的操作参数中携带的信息）、当前状态，而且还依赖于其他（可能很多）属性的值。
</p></td>
</tr>
</table>
</div>
<div class="stepHeading">创建初始环境图</div>
<div class="stepContent">
<table class="stepTable" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<td><p>
    随着您对用例模型的发展并向其添加更多的详细信息（发现业务参与者；或者在已确定参与者（可能还有操作）的情况下详细描述他们的交互），您可以创建初始协作并使用环境图进行说明。可如所示的那样开始使用已在很大程度上抽象的系统接口来创建环境图。系统描绘为顶级子系统（构造型为“system”），它最终可实现几个接口。业务参与者及其关联也将再次显示，最初没有详细信息。
</p></td>
</tr>
</table>
</div>
<div class="stepHeading">优化关联和接口</div>
<div class="stepContent">
<table class="stepTable" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<td><p>
    接下来，优化业务参与者、系统和系统接口之间的关联。 您可以开始推断在<a class="elementLinkWithType" href="./../../rup_bm/tasks/find_business_actors_and_use_cases_2D0CD77E.html" guid="{1CCEB101-0027-451C-81CA-521D8B127F98}">Task: 查找业务参与者和用例 </a> 中出现的系统操作和系统属性。 然后您可以使用<a class="elementLinkWithType" href="./../../rup_bm/tasks/detail_business_use_case_FDA3D473.html" guid="{0DD91699-9FBA-420D-8E2B-C0945557A791}">Task: 详细描述业务用例 </a> 。 请注意，系统现在通过显示接口呈现给参与者。可以根据您的需要显示此过程的实现，但是也可以将其省略而不会丢失很多信息。
</p>
<p>
    在此阶段，基于领域知识和在企业级别实现业务用例的过程中完成的任何工作，只尝试着确定 I/O 业务实体。请注意，并不需要在图中显示 I/O 业务实体，但是这对找出参与者－系统交互的原因可能很有帮助。
</p>
<p>
    因此，您可以开始描绘参与者与系统之间的连接（例如，记录所需的协议）并记录在它们之间流动的实体。
</p></td>
</tr>
</table>
</div>
<div class="stepHeading">详细描述业务操作和其他特征</div>
<div class="stepContent">
<table class="stepTable" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<td><p>
    在此步骤中，开始构造业务用例场景（用例的实例），您可以在该场景中描述业务系统操作（所提供的和所需的操作）。这些场景可通过交互或活动图说明。用例中的每个黑盒步骤都表示与系统更为细化的交互，并映射到一个操作调用（但是不一定是一个唯一操作；其他黑盒步骤可以使用同一操作）。在环境图中（然后在业务分析模型中）定义系统操作的同时，用例也被注释为调用的操作以便进行跟踪。操作还继承任何性能需求或其他已分配到黑盒步骤的非功能需求。随着您检查在场景中执行的每个黑盒步骤，您会发现使用的名称可能暗示系统必须为执行用例场景而维护的状态变量和存储。您还可以优化所需的
    I/O 业务实体，并将这些实体与操作调用关联以形成在参与者和系统之间发送的信号。&nbsp;
</p>
<p>
    它可能有助于理解将系统接口细分为更多接口；实际上，在业务补充规约中可能有促成此划分的接口需求。虽然这不是固定的规定，但是下面的说明显示了针对每个参与者类型的系统接口到“提供的系统接口”的发展。多个参与者可以共享一个接口，或者一个参与者可以使用多个接口。
</p>
<p>
    此分析还可以确定系统<i>必需的</i>接口，即必须是业务参与者所支持（以处理系统的消息）的接口。这些接口可按对称的方式添加到图中。一个业务参与者可以支持（实现）多个接口。
</p>
<p>
    需要将操作、存储等添加到所显示接口（在属性和操作的间隔中）的扩展形式。此外，可省略提供的系统接口的实现而不会丢失很多信息。
</p>
<p>
    在环境图中获取的该顶级协作使得接口、连接（流入和流出系统的对象）以及相关的性能特征可以进行严格指定。
</p></td>
</tr>
</table>
</div>
</td>
</tr>
</table>
</div>
<table class="copyright" border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="copyright">Copyright &copy; 2008 版权所有 东软集团股份有限公司&nbsp; 联系邮箱:<a href="mailto:tcoe@neusoft.com">tcoe@neusoft.com</a></td>
</tr>
</table>
</td>
</tr>
</table>
</body>
<script type="text/javascript" language="JavaScript">
				contentPage.onload();
			</script>
</html>
